package ControleAcademico.View;

import java.util.ArrayList;
import java.util.Scanner;

import ControleAcademico.Model.Dao.DisciplinaImpl;
import ControleAcademico.Model.Pojo.Aluno;
import ControleAcademico.Model.Pojo.Disciplina;
import ControleAcademico.Model.Pojo.HistoricoDisciplina;
import ControleAcademico.Model.Pojo.Professor;

public class MenuDisciplina {
	private DisciplinaImpl disciplinaImpl;
	
	public MenuDisciplina (DisciplinaImpl disciplinaImpl){
		this.disciplinaImpl = disciplinaImpl;
	}
	
	public void cadastrar () {
		
		int flag = 0;
		Scanner entrada = new Scanner(System.in);
		
		while (flag != -1) {
			
			for(int i=0;i<50;i++){
				System.out.println("");
			}
			
			System.out.println(":: Cadastro de Disciplinas ::");
			
			
			String nome="";
			
			boolean verifica = true;
			while(verifica){
				
				System.out.println("\nInforme o nome da disciplina:");
				nome = entrada.nextLine();
				
				boolean encontrado = false;
				for(Disciplina i : disciplinaImpl.getListaDeDisciplinas()){
					if(nome.equals(i.getNome())){
						encontrado = true;
						System.out.println("Disciplina com este nome já está cadastrada!\n");
						break;
					}
				}
				if(!encontrado){
					verifica = false;
				}
			}
			
			System.out.println("\nInforme a ementa:");
			String ementa = entrada.nextLine();
			
			System.out.println("\nInforme a carga horária (em horas):");
			String leitura = entrada.nextLine();
			int cargaHoraria = Integer.parseInt(leitura);
			
			boolean conti = true;

			while(conti){
				System.out.println("\n\nDisciplina cadastrada com sucesso!\n\n\n\n");
				System.out.println("\n\nAperte qualquer tecla para continuar ...\n");
				leitura = entrada.nextLine();
				conti = false;
			}
			
			for(int l = 0; l<50;l++){
				System.out.println();
			}
			
			System.out.println("\nDeseja adicionar mais disciplinas? S/N: ");
			leitura = entrada.nextLine();
			
			if(leitura.equals("N") || leitura.equals("n")){
				flag = -1;
			}
	 		
			Disciplina disciplina = new Disciplina(nome, ementa, cargaHoraria);
			disciplinaImpl.salvar(disciplina, 0);
			
			
			
		}
	}
	

	
}

